物理网卡
功能概述
ZStack Cloud云平台支持基于SR-IOV规范,将一张物理网卡虚拟化切割成多张VF类型网卡,直接分配给云主机使用。实现弹性灵活使用资源的同时,提高资源利用率、节约成本。
相比传统的vNIC虚拟化网卡,VF网卡具有以下功能优势:
- VF网卡可直接分配给云主机,越过虚拟化层,缩短数据传输路径,使云主机获得接近物理设备的I/O性能。
- 明显减少对物理机CPU资源的消耗,即使物理机CPU压力较大,也能有效减少网络丢包,提高传输效率。
最佳实践
物理机已安装物理网卡(PF网卡)驱动;确保已获取到VF网卡对应的驱动。
说明: 相关网卡驱动以及安装方法请联系网卡提供厂商获取帮助。PF网卡驱动需安装到相关物理机,保证物理网卡可被物理机识别,且能正常进行SR-IOV切割,而VF网卡驱动需安装到相关云主机,保证VF网卡被云主机识别且正常工作。
物理机CPU支持Interrupt Remapping。在物理机执行以下脚本,查看CPU是否支持Interrupt Remapping
cat interrupt_remapping_check.sh #!/bin/sh if [ $(dmesg | grep ecap | wc -l) -eq 0 ]; then echo "No interrupt remapping support found" exit 1 fi for i in $(dmesg | grep ecap | awk '{print $NF}'); do if [ $(( (0x$i & 0xf) >> 3 )) -ne 1 ]; then echo "Interrupt remapping not supported" exit 1 fi done
若物理机CPU不支持Interrupt Remapping,须执行以下命令进行配置:
echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf
若物理网卡已配置bond,继续使用SR-IOV功能可能导致VF与vNIC网卡相互通信受影响,推荐使用方式如下:
- 推荐针对单个物理网卡配置bond,并继续使用SR-IOV功能。
- 多个物理网卡配置bond时,推荐仅对其中一个物理网卡进行SR-IOV切割。
SR-IOV切割网卡后,若VF侧无法看到流量,需在物理机设置网卡混杂模式并把VF添加为白名单
ip link set br_eno1 promisc on ip link set dev br_eno1 vf 0 trust on
注意事项
- 物理网卡需要支持SR-IOV功能。
- 确保该物理机BIOS已开启Intel VT-d / AMD IOMMU配置和SR-IOV配置。
- 若VF网卡已分配给云主机使用,请勿卸载物理网卡驱动,否则可能导致VF网卡强行回收。
- 运行状态且加载VF网卡的云主机不支持更改物理机、更改物理机和主存储操作。须停用云主机或卸载VF网卡才能执行这些操作。
- 停用云主机将自动释放VF网卡;启用云主机时重新获取,若无可用VF网卡,将导致启用云主机失败。